查看原文
其他

进阶课程㊵丨Azure仿真平台使用

阿波君 Apollo开发者社区 2022-07-29


Azure是一种灵活和支持互操作的平台,它可以被用来创建云中运行的应用或者通过基于云的特性来加强现有应用。它开放式的架构给开发者提供了Web应用、互联设备的应用、个人电脑、服务器、或者提供最优在线复杂解决方案的选择。



上周阿波君为大家详细介绍了「进阶课程㊴丨Apollo安装过程概述」


此课程主要介绍了Apollo安装分为三步:第一是安装基础环境;第二是拉取Docker镜像并创建容器;第三是进入容器编译源码;此外,还简单概述了仿真平台的使用方式。


本周阿波君将继续与大家分享Azure仿真平台使用的相关课程。下面,我们一起进入进阶课程第40期。


本课程内容以Apollo 3.0版本为例。


完整版视频学习  请戳『阅读原文』



  以下,ENJOY  



本节补充介绍另一个仿真平台,它是基于微软的一个仿真平台Azure,该仿真平台不需要本地部署。


图1 Apollo的Github账号上的两个状态


在Apollo的Github账号上可看见图1所示的两个状态,左侧的Build用来做持续集成。由于有很多的开发者会提交自己对Apollo修改后的代码,我们不可能每次都把代码下载到本地进行验证。为了简化验证,团队会把已经编辑好的测试运例用来测试开发者提交的代码是否正确,以此来判断开发者的代码对目前的Master的分支是否有影响。Build提供了对开发者代码验证的一种渠道。


Simulation主要用来验证代码的鲁棒性。Apollo团队在微软的Azure仿真平台上部署了很多场景,拿最新的代码去在这些场景下进行测试和验证,看相应模块在这些场景的执行情况,最终得到代码的鲁棒性报告。该仿真平台的地址是azure.apollo.auto。在该仿真平台运行自己的代码是不需要进行本地编译的,其使用流程如下所示。


首先是克隆Apollo在Github上的代码,然后在本地对相应的模块进行修改,例如Planning。修改之后将代码提交到自己在Github的Apollo仓库中,可以是Master分支也可以是新建的分支。最后在微软的Azure仿真平台选择目标场景对更新后的代码进行验证。


图2 如何使用Azure仿真平台


运行结束之后会拿到一个报告,表示修改后的代码在不同场景下的执行情况。图3给出了一个运行报告的样例。第一列的Scenario是一些场景,在仿真平台中,我们会把一段很长的路切割成很多的场景,比如有左转、左转有行人、有行人横插等。后面几列是对应场景的状态描述,Run Status表示场景的运行状态,如果后面的指标中有一个失败,那么Run Status就是失败的。具体衡量的指标有碰撞检测、速度校验、On Road检测, Red-Light检测(是否有闯红灯的情况)、ARW检测(是否成功到达目的地)、Hard Break(急刹车)、加速度(它是影响体感的一个指标)。


图3 仿真平台运行报告样例


以上就是本节课程的主要内容了,更多话题讨论、技术交流,可以添加『Apollo小哥哥』为好友,进开发者交流群。




  




阿波君说:


在学习过程中,开发者不仅可以在Apollo开发者社区小程序上对课程内容进行提问,还可以在开发者微信群中交流学习心得,共同学习自动驾驶技术。

开发者社区还将在公众号上定期推送课程相关的技术干货,全程陪伴大家共同进步。祝Apollo开发者们顺利完成《Apollo自动驾驶进阶课程》的学习,在自动驾驶道路上越走越远!

阿波君还欢迎大家在小程序内晒出学习笔记,也可以加入开发者交流社群与大家交流互动,有好礼相送!



观看/阅读完该节课程后

在开发者社群

及小程序「社区问答」版块内

上传你的课程笔记截图

手写笔记/电脑文档均可

即可联络社区小助手获取

百度周边纪念品1份

赶快来撩吧~比心~






您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存